package com.gitee.ykr.lightweight.rpc.common.container;

import com.gitee.ykr.lightweight.rpc.loadbalance.LoadBalanceExcutor;
import com.gitee.ykr.lightweight.rpc.monitor.trace.Monitor;
import com.gitee.ykr.lightweight.rpc.protocol.client.IClientExcutor;
import com.gitee.ykr.lightweight.rpc.protocol.client.RequestInterceptor;
import com.gitee.ykr.lightweight.rpc.protocol.client.ResponseHandler;
import com.gitee.ykr.lightweight.rpc.protocol.server.RequestHandler;
import com.gitee.ykr.lightweight.rpc.protocol.server.ServerExcutor;
import com.gitee.ykr.lightweight.rpc.registry.ClientDiscovery;
import lombok.Data;

/**
 * @author YKR
 * @Describe
 * @date 2021/8/23
 */
@Data
public class ExcutorContainer {

    private IClientExcutor clientExcutor;
    private ServerExcutor serverExcutor;

    private RequestHandler serverRequestHandler;
    private RequestInterceptor requestInterceptor;
    private ResponseHandler responseHandler;

    private LoadBalanceExcutor loadBalanceExcutor;

    private ClientDiscovery clientDiscovery;

    private Monitor monitor;

}
